home *** CD-ROM | disk | FTP | other *** search
- ************************************************************
- *
- * LINEAR-PHASE FIR FILTER
- * LENGTH-80 BANDPASS FILTER
- *
- * SAMPLING FREQUENCY = 10 KHZ
- *
- * FILTER CHARACTERISTICS
- *
- * BAND 1 BAND 2 BAND 3
- *
- * LOWER BAND EDGE 0.0000 1.3750 4.0000
- * UPPER BAND EDGE 1.0000 3.6250 5.0000
- * NOMINAL GAIN 0.0000 1.0000 0.0000
- * NOMINAL RIPPLE 0.0010 0.0200 0.0010
- * MAXIMUM RIPPLE 0.0004 0.0076 0.0004
- * RIPPLE IN DB -68.3965 0.0657 -68.3997
- *
- * FILTER STRUCTURE
- *
- *
- * -1 -1 -1
- * z z z
- * o--->---o--->---o--->---o---> - - -o---->---o
- * x(n) | | | | |
- * | | | | |
- * v h(0) v h(1) v h(2) v h(N-2) v h(N-1)
- * | | | | |
- * | | | | |
- * o--->---o--->---o---> - - -o--->----o--->---o
- * y(n)
- *
- ************************************************************
- *
- * CYCLES | EXECUTION TIME | PROGRAM MEMORY | DATA MEMORY
- * | (MICROSECONDS) | (WORDS) | (WORDS)
- * -------|----------------|----------------|-------------
- * | | |
- * 163 | 32.6 | 163 | 120
- * | | |
- * -------------------------------------------------------
- *
- * (EXCLUDING INITIALIZATION AND I/O)
- *
- ************************************************************
- *
- IDT 'FIRBPASS'
- XN EQU 0
- XNM1 EQU 1
- XNM2 EQU 2
- XNM3 EQU 3
- XNM4 EQU 4
- XNM5 EQU 5
- XNM6 EQU 6
- XNM7 EQU 7
- XNM8 EQU 8
- XNM9 EQU 9
- XNM10 EQU 10
- XNM11 EQU 11
- XNM12 EQU 12
- XNM13 EQU 13
- XNM14 EQU 14
- XNM15 EQU 15
- XNM16 EQU 16
- XNM17 EQU 17
- XNM18 EQU 18
- XNM19 EQU 19
- XNM20 EQU 20
- XNM21 EQU 21
- XNM22 EQU 22
- XNM23 EQU 23
- XNM24 EQU 24
- XNM25 EQU 25
- XNM26 EQU 26
- XNM27 EQU 27
- XNM28 EQU 28
- XNM29 EQU 29
- XNM30 EQU 30
- XNM31 EQU 31
- XNM32 EQU 32
- XNM33 EQU 33
- XNM34 EQU 34
- XNM35 EQU 35
- XNM36 EQU 36
- XNM37 EQU 37
- XNM38 EQU 38
- XNM39 EQU 39
- XNM40 EQU 40
- XNM41 EQU 41
- XNM42 EQU 42
- XNM43 EQU 43
- XNM44 EQU 44
- XNM45 EQU 45
- XNM46 EQU 46
- XNM47 EQU 47
- XNM48 EQU 48
- XNM49 EQU 49
- XNM50 EQU 50
- XNM51 EQU 51
- XNM52 EQU 52
- XNM53 EQU 53
- XNM54 EQU 54
- XNM55 EQU 55
- XNM56 EQU 56
- XNM57 EQU 57
- XNM58 EQU 58
- XNM59 EQU 59
- XNM60 EQU 60
- XNM61 EQU 61
- XNM62 EQU 62
- XNM63 EQU 63
- XNM64 EQU 64
- XNM65 EQU 65
- XNM66 EQU 66
- XNM67 EQU 67
- XNM68 EQU 68
- XNM69 EQU 69
- XNM70 EQU 70
- XNM71 EQU 71
- XNM72 EQU 72
- XNM73 EQU 73
- XNM74 EQU 74
- XNM75 EQU 75
- XNM76 EQU 76
- XNM77 EQU 77
- XNM78 EQU 78
- XNM79 EQU 79
- *
- H0 EQU 80
- H1 EQU 81
- H2 EQU 82
- H3 EQU 83
- H4 EQU 84
- H5 EQU 85
- H6 EQU 86
- H7 EQU 87
- H8 EQU 88
- H9 EQU 89
- H10 EQU 90
- H11 EQU 91
- H12 EQU 92
- H13 EQU 93
- H14 EQU 94
- H15 EQU 95
- H16 EQU 96
- H17 EQU 97
- H18 EQU 98
- H19 EQU 99
- H20 EQU 100
- H21 EQU 101
- H22 EQU 102
- H23 EQU 103
- H24 EQU 104
- H25 EQU 105
- H26 EQU 106
- H27 EQU 107
- H28 EQU 108
- H29 EQU 109
- H30 EQU 110
- H31 EQU 111
- H32 EQU 112
- H33 EQU 113
- H34 EQU 114
- H35 EQU 115
- H36 EQU 116
- H37 EQU 117
- H38 EQU 118
- H39 EQU 119
- *
- MODE EQU 120
- CLOCK EQU 121
- MASK1 EQU 122
- MASK2 EQU 123
- YN EQU 124
- ONE EQU 125
- *
- AORG 0
- *
- B START
- *
- * COEFFICIENTS ARE INITIALLY *
- * STORED IN PROGRAM MEMORY *
- *
- * DUE TO THE SYMMETRY OF THE IMPULSE RESPONSE *
- * ONLY HALF OF THE SAMPLES OF THE IMPULSE *
- * RESPONSE ARE STORED. THIS MEANS THAT *
- * h(N-1-n) = h(n). *
- *
- CH0 DATA >FFDC * -0.107251E-02 *
- CH1 DATA >001F * 0.973976E-03 *
- CH2 DATA >0051 * 0.249065E-02 *
- CH3 DATA >FFE9 * -0.675043E-03 *
- CH4 DATA >FFE6 * -0.771385E-03 *
- CH5 DATA >FFBA * -0.212256E-03 *
- CH6 DATA >FFB4 * -0.229530E-02 *
- CH7 DATA >004B * 0.231021E-02 *
- CH8 DATA >FFF9 * -0.194902E-03 *
- CH9 DATA >0069 * 0.322896E-02 *
- CH10 DATA >00A2 * 0.496452E-02 *
- CH11 DATA >FF6F * -0.440419E-02 *
- CH12 DATA >FFFE * -0.314831E-04 *
- CH13 DATA >FF70 * -0.438169E-02 *
- CH14 DATA >FEF4 * -0.815474E-02 *
- CH15 DATA >00CB * 0.621682E-02 *
- CH16 DATA >000B * 0.342216E-03 *
- CH17 DATA >00E6 * 0.704627E-02 *
- CH18 DATA >0187 * 0.119391E-01 *
- CH19 DATA >FEE5 * -0.860811E-02 *
- CH20 DATA >000B * 0.346738E-03 *
- CH21 DATA >FE7F * -0.117293E-01 *
- CH22 DATA >FDBF * -0.175964E-01 *
- CH23 DATA >0192 * 0.122947E-01 *
- CH24 DATA >FFB5 * -0.227426E-02 *
- CH25 DATA >026A * 0.188796E-01 *
- CH26 DATA >0368 * 0.266148E-01 *
- CH27 DATA >FDC2 * -0.175126E-01 *
- CH28 DATA >00C0 * 0.586574E-02 *
- CH29 DATA >FC0A * -0.309240E-01 *
- CH30 DATA >FAA3 * -0.418954E-01 *
- CH31 DATA >0347 * 0.256315E-01 *
- CH32 DATA >FE3D * -0.137498E-01 *
- CH33 DATA >0747 * 0.568720E-01 *
- CH34 DATA >09BB * 0.760286E-01 *
- CH35 DATA >FA3D * -0.450011E-01 *
- CH36 DATA >052B * 0.403853E-01 *
- CH37 DATA >EB59 * -0.161339E+00 *
- CH38 DATA >DC2A * -0.279963E+00 *
- CH39 DATA >2D57 * 0.352454E+00 *
- *
- MD DATA >000A
- SMP DATA >01F3 * SAMPLING RATE OF 10 KHZ *
- *
- START LDPK 0
- *
- LACK 1
- SACL ONE * CONTENT OF ONE IS 1 *
- *
- LARK AR0,CLOCK * THIS SECTION OF CODE LOADS *
- LARK AR1,>29 * THE FILTER COEFFICIENTS AND *
- LACK SMP * OTHER VALUES FROM PROGRAM *
- LOAD LARP AR0 * MEMORY TO DATA MEMORY *
- TBLR *-,AR1
- SUB ONE
- BANZ LOAD
- *
- OUT MODE,PA0 * INITIALIZATION OF ANALOG *
- OUT CLOCK,PA1 * INTERFACE BOARD *
- *
- WAIT BIOZ NXTPT * BIO PIN GOES LOW WHEN A *
- B WAIT * NEW SAMPLE IS AVAILABLE *
- *
- NXTPT IN XN,PA2 * BRING IN THE NEW SAMPLE XN *
- *
- ZAC
- *
- LT XNM79 * DUE TO SYMMETRY h(0) = h(79) *
- MPY H0 * x(n-79) * h(79) *
- *
- LTD XNM78
- MPY H1 * h(1) = h(78) *
- *
- LTD XNM77
- MPY H2
- *
- LTD XNM76
- MPY H3
- *
- LTD XNM75
- MPY H4
- *
- LTD XNM74
- MPY H5
- *
- LTD XNM73
- MPY H6
- *
- LTD XNM72
- MPY H7
- *
- LTD XNM71
- MPY H8
- *
- LTD XNM70
- MPY H9
- *
- LTD XNM69
- MPY H10
- *
- LTD XNM68
- MPY H11
- *
- LTD XNM67
- MPY H12
- *
- LTD XNM66
- MPY H13
- *
- LTD XNM65
- MPY H14
- *
- LTD XNM64
- MPY H15
- *
- LTD XNM63
- MPY H16
- *
- LTD XNM62
- MPY H17
- *
- LTD XNM61
- MPY H18
- *
- LTD XNM60
- MPY H19
- *
- LTD XNM59
- MPY H20
- *
- LTD XNM58
- MPY H21
- *
- LTD XNM57
- MPY H22
- *
- LTD XNM56
- MPY H23
- *
- LTD XNM55
- MPY H24
- *
- LTD XNM54
- MPY H25
- *
- LTD XNM53
- MPY H26
- *
- LTD XNM52
- MPY H27
- *
- LTD XNM51
- MPY H28
- *
- LTD XNM50
- MPY H29
- *
- LTD XNM49
- MPY H30
- *
- LTD XNM48
- MPY H31
- *
- LTD XNM47
- MPY H32
- *
- LTD XNM46
- MPY H33
- *
- LTD XNM45
- MPY H34
- *
- LTD XNM44
- MPY H35
- *
- LTD XNM43
- MPY H36
- *
- LTD XNM42
- MPY H37
- *
- LTD XNM41
- MPY H38
- *
- LTD XNM40
- MPY H39
- *
- LTD XNM39
- MPY H39
- *
- LTD XNM38
- MPY H38
- *
- LTD XNM37
- MPY H37
- *
- LTD XNM36
- MPY H36
- *
- LTD XNM35
- MPY H35
- *
- LTD XNM34
- MPY H34
- *
- LTD XNM33
- MPY H33
- *
- LTD XNM32
- MPY H32
- *
- LTD XNM31
- MPY H31
- *
- LTD XNM30
- MPY H30
- *
- LTD XNM29
- MPY H29
- *
- LTD XNM28
- MPY H28
- *
- LTD XNM27
- MPY H27
- *
- LTD XNM26
- MPY H26
- *
- LTD XNM25
- MPY H25
- *
- LTD XNM24
- MPY H24
- *
- LTD XNM23
- MPY H23
- *
- LTD XNM22
- MPY H22
- *
- LTD XNM21
- MPY H21
- *
- LTD XNM20
- MPY H20
- *
- LTD XNM19
- MPY H19
- *
- LTD XNM18
- MPY H18
- *
- LTD XNM17
- MPY H17
- *
- LTD XNM16
- MPY H16
- *
- LTD XNM15
- MPY H15
- *
- LTD XNM14
- MPY H14
- *
- LTD XNM13
- MPY H13
- *
- LTD XNM12
- MPY H12
- *
- LTD XNM11
- MPY H11
- *
- LTD XNM10
- MPY H10
- *
- LTD XNM9
- MPY H9
- *
- LTD XNM8
- MPY H8
- *
- LTD XNM7
- MPY H7
- *
- LTD XNM6
- MPY H6
- *
- LTD XNM5
- MPY H5
- *
- LTD XNM4
- MPY H4
- *
- LTD XNM3
- MPY H3
- *
- LTD XNM2
- MPY H2
- *
- LTD XNM1
- MPY H1
- *
- LTD XN
- MPY H0
- *
- APAC
- *
- SACH YN,1
- *
- OUT YN,PA2 * OUTPUT THE FILTER RESPONSE y(n) *
- *
- B WAIT * GO GET THE NEXT POINT *
- *
- END